A New Mechanism for Exception Handling in Concurrent Control Systems
نویسندگان
چکیده
The most difficult aspect of concurrent discrete-event control is the handling of errors. Most present day languages for concurrent control system specification do not provide adequate mechanisms for exception handling, which is a major limitation on their effectiveness. In this paper, a new mechanism for exception handling in concurrently executing discrete-event control processes is treated, which simplifies the complex task of robust control system specification. The mechanism is based on constraint monitors, and can be used in conjunction with known mechanisms for exception handling in sequential programs. Constraints and constraint monitors are new concepts which are essential for dealing with exceptions in control systems. The constraints of a statement are conditions which must be valid throughout the execution of the statement. Constraint monitors are used to specify the constraints of a statement in a structured way, leading to programs in which the code for normal operation is separated from the code for exception handling. During the execution of the statement, the specified constraints are monitored at all encountered interaction points. If a constraint violation is detected, an exception is raised. In this way, the invariants of a process remain valid, finalization obligations of statements are executed, deadlock in the case of exception occurrences is prevented, and exceptions are not raised in processes in which no constraints have been violated. Constraint monitors are explained using a CSP-like language to which exception handling constructs have been added. The constructs have been chosen in such a way, that the resulting syntax and semantics are simple and especially suitable for the specification of robust control systems. The mechanism is finally illustrated by an example of the specification of a control system.
منابع مشابه
Improving reliability of cooperative concurrent systems with exception flow analysis
Developers of fault-tolerant distributed systems need to guarantee that fault tolerance mechanisms they build are in themselves reliable. Otherwise, these mechanisms might in the end negatively affect overall system dependability, thus defeating the purpose of introducing fault tolerance into the system. To achieve the desired levels of reliability, mechanisms for detecting and handling errors ...
متن کاملتحلیل الگوهای همزمان در نمودارهای کنترل فرآیند آماری با استفاده از شبکه عصبی
Statistical Process Control (SPC) charts play a major role in quality control systems, and their correct interpretation leads to discovering probable irregularities and errors of the production system. In this regard, various artificial neural networks have been developed to identify mainly singular patterns of SPC charts, while having drawbacks in handling multiple concurrent patterns. In th...
متن کاملAn Exception Handling Mechanism for the Concurrent Invocation Statement
Several concurrent programming languages and systems — e.g., MPI, .NET, and SR — provide mechanisms to facilitate communication between one process and a group of others. One such mechanism is SR’s concurrent invocation statement (co statement). It specifies a group of operation invocations and normally terminates when all of its invocations have completed. To make the co statement more flexibl...
متن کاملImproving the Reliability of Cooperative Concurrent Systems with Exception Flow Analysis
Developers of fault-tolerant distributed systems must guarantee that the fault tolerance mechanisms they build are, themselves, reliable. Otherwise, these mechanisms might end up contributing negatively to overall system dependability, thus defeating the purpose of introducing fault tolerance into the system. To achieve the desired levels of reliability, the development of mechanisms for detect...
متن کاملAdvanced Exception Handling Mechanisms
It is no longer possible to consider exception handling as a secondary issue in language design, or even worse, a mechanism added after the fact via a library approach. Exception handling is a primary feature in language design and must be integrated with other major features, including advanced control flow, objects, coroutines, concurrency, realtime and polymorphism. Integration is crucial as...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Eur. J. Control
دوره 2 شماره
صفحات -
تاریخ انتشار 1996